package br.com.locautowebbd.veiculo;

import br.com.locautowebbd.util.RepositorioException;


public class CadastroVeiculo {
	private RepositorioVeiculos veiculos;

	public CadastroVeiculo(RepositorioVeiculos rep) {
		if (rep == null) {
			throw new IllegalArgumentException("Argumento lista modelos nula");
		}
		this.veiculos = rep;
	}

	public void atualizar(Veiculo veiculo) throws VeiculoInexistenteException,
			RepositorioException {
		veiculos.atualizar(veiculo);
	}

	public void inserir(Veiculo novaVeiculo) throws RepositorioException, VeiculoExistenteException{
            int codigo = novaVeiculo.getCodigo();
		if (!veiculos.existe(codigo)){
			veiculos.inserir(novaVeiculo);
		} else {
			throw new VeiculoExistenteException(novaVeiculo.getCodigo());
		}
	}

	public void remover(int codigo) throws VeiculoInexistenteException,
			RepositorioException {
		veiculos.remover(codigo);
	}

	public Veiculo procurar(int codigo) throws VeiculoInexistenteException,
			RepositorioException {
		return veiculos.procurar(codigo);
	}
}